Opengl - Diffuse And Specular Mapping, Directional Lights And Spotlights, Model Loading